package cn.wjh.business.service;

import java.util.List;

import cn.wjh.business.domain.Works;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 比赛作品Service接口
 *
 * @author jiraWu
 * @date 2023-10-20
 */
public interface IWorksService extends IService<Works> {
	/**
	 * 查询比赛作品
	 *
	 * @param worksId 比赛作品主键
	 * @return 比赛作品
	 */
	public Works selectWorksByWorksId(Long worksId);

	/**
	 * 查询比赛作品列表
	 *
	 * @param works 比赛作品
	 * @return 比赛作品集合
	 */
	public List<Works> selectWorksList(Works works);

	/**
	 * 新增比赛作品
	 *
	 * @param works 比赛作品
	 * @return 结果
	 */
	public int insertWorks(Works works);

	/**
	 * 修改比赛作品
	 *
	 * @param works 比赛作品
	 * @return 结果
	 */
	public int updateWorks(Works works);

	/**
	 * 批量删除比赛作品
	 *
	 * @param worksIds 需要删除的比赛作品主键集合
	 * @return 结果
	 */
	public int deleteWorksByWorksIds(Long[] worksIds);

	/**
	 * 删除比赛作品信息
	 *
	 * @param worksId 比赛作品主键
	 * @return 结果
	 */
	public int deleteWorksByWorksId(Long worksId);

	/**获取作品提交状态*/
	boolean isPublish(Long competitionId);

	/*获取我的作品*/
	List<Works> myWorks(Works works);

	/*根据比赛Id和用户Id获取作品详细*/
	Works getInfoByCompetitionIdAndUserId(Long userId, Long competitionId);

	/*获取作品排名数据*/
	List<Works> rank(Works works);

	/**
	 * 判断作品点评状态
	 * @param works
	 * @return
	 */
    List<Works> judgement(Works works);


}
